/*
@功能：商品页js
@作者：diamondwang
@时间：2013年11月13日
*/

$(function(){

	//无限极分类显示与隐藏
	$(".category").mouseover(function() {
		$(".category .off").removeClass('off').addClass('on');
		$(".category .on").next().show();
	}).mouseout(function() {
		
		$(".category .on").removeClass('on').addClass('off');
		$(".category .off").next().hide();
	});

	//小图看大图
	$(function(){
		$('.jqzoom').jqzoom({
            zoomType: 'standard',
            lens:true,
            preloadImages: false,
            alwaysOn:false,
            title:false,
            zoomWidth:400,
            zoomHeight:400,
        });
	})

	//商品缩略图左右移动效果
	//点击后退
	$("#backward").click(function(){
		var left = parseInt($(".smallpic_wrap ul").css("left")); //获取ul水平方向偏移量
		var offset = left + 62;
		if (offset <= 0){
			$(".smallpic_wrap ul").stop(true,false).animate({left:offset},"slow",'',function(){
				//动画完成之后，判断是否到了左边缘
				if ( parseInt($(".smallpic_wrap ul").css("left")) >= 0 ){
					$("#backward").removeClass("on").addClass("off");
				}
			});
			//开启右边的按钮
			$("#forward").removeClass("off").addClass("on");			
		}
		
		$(this).blur(); //去除ie 虚边框
	});

	//点击前进
	$("#forward").click(function(){
		var left = parseInt($(".smallpic_wrap ul").css("left")); //获取ul水平方向偏移量
		var len = $(".smallpic_wrap li").size() * 62; //获取图片的整体宽度(图片数 * 图片宽度)558
		var offset = left - 62;
		if (offset >= -(len - 62*5)){
			$(".smallpic_wrap ul").stop(true,false).animate({left:offset},"slow",'',function(){
				//判断是否到了右边缘
				if ( parseInt($(".smallpic_wrap ul").css("left")) <= -(len - 62*5) ){
					$("#forward").removeClass("on").addClass("off");
				}
			});
			//开启左边的按钮
			$("#backward").addClass("on").removeClass("off");
			
		}
		
		$(this).blur(); //去除ie 虚边框
	});

	//选择货品，如颜色、版本等
	var attrIds = '';
	$(".product a").click(function(){

		if( $(this).hasClass('selected') ){
			return false;
		}

		attrIds = '';
		//清除下面所有选中属性
		$(this).addClass('selected').siblings('a').removeClass('selected');
		$(this).parents('li').nextAll('li').find('a').removeClass('selected');
		$(this).find('input').attr('checked','checked');

		//拼凑属性id
		$('.selected').find('input').each(function() {
			attrIds+=$(this).val()+',';
		});
		attrIds = attrIds.slice(0,-1);

		var that = this;

		//异步获取货品
		$.get(checkProductUrl, {attrIds:attrIds,id:id}, function(data) {
			
			//如果获取成功
			if( data['status'] ) {

				var num = data.msg.length;

				// 修改商品价格、编号信息
				$('.shop_price').find('strong').text('￥'+data.price+'元');
				$('#memberprice').text('￥'+data.price+'元');
				$('.market_price').prev('li').html('<span>商品编号： </span>'+data.msg[0].product_code);

				// 获取点击按钮后面的所有a标签
				var oAs = $(that).parents('.product').nextAll('.product').find('a');

				// 先清空所有样式
				oAs.removeAttr('style');
				
				// 循环每个a标签，看其下面的input的值是否在返回的属性值id中
				oAs.each(function() {

					// 获取a标签下面input的值
					var value = $(this).find('input').val();

					// 用于检测是否在返回的属性值id中
					var flag = true;
					
					// 循环返回的属性值id
					for(var i in data['ids']){
						
						// 与a标签下面input的值做比较
						if(  value == data['ids'][i] ) {

							if( num == 1) {

								$(this).addClass('selected');
								$(this).find('input').attr('checked','checked');
							}

							// 如果在其中，就让flag变成false
							flag = false;
							break;
						}

					}

					// 如果不在返回的属性值id中
					if (flag) {

						// 添加不可点击的样式
						$(this).css({'color':'#cecece','pointer-events':'none'});
					}
					
				});


			}else {
				alert(data['msg']);
			}
			
		},'json');
		
		//去除虚边框
		$(this).blur();
	});

	// 评论登录按钮
	$('#login_a').click(function() {

		$("#logInfo-login").find('a').eq(0).trigger('click');

	});

	// 异步获取好评度
	$.get(getCommentRateUrl,{id:id}, function(data) {

		var html = '';

		if( data.status ) {

			html = '<div class="rate fl">\
						<strong><em>'+data.msg.good+'</em>%</strong> <br>\
						<span>好评度</span>\
					</div>\
					<div class="percent fl">\
						<dl>\
							<dt>好评（'+data.msg.good+'%）</dt>\
							<dd><div style="width:'+data.msg.good+'px;"></div></dd>\
						</dl>\
						<dl>\
							<dt>中评（'+data.msg.medium+'%）</dt>\
							<dd><div style="width:'+data.msg.medium+'px;"></div></dd>\
						</dl>\
						<dl>\
							<dt>差评（'+data.msg.bad+'%）</dt>\
							<dd><div style="width:'+data.msg.bad+'px;"></div></dd>\
						</dl>\
					</div>';

			$('.buyer').before(html);

			var stars = Math.ceil( data.msg.good/2/10 ) == 0 ? 1 : Math.ceil( data.msg.good/2/10 ) ; 
			$('.goodsinfo').find('.star').addClass( 'star'+stars ).find('a').html('(已有'+data.total+'人评价)');

		}		
		
	},'json');

	// 异步获取印象
	$.get(getImpressionUrl,{id:id}, function(data) {

		var html = '';

		if( data.status ) {

			for (var i = 0; i < data.msg.length; i++) {
				
				html+='<dd><span>'+data.msg[i].title+'</span><em>('+data.msg[i].num+')</em></dd>';
			}

		}else {

			html = '<dd><span>暂无印象，快来评论商品添加印象吧！</span></dd>';

		}

		$('.buyer').find('dl').append(html)
		
	},'json');

	//异步添加评论
	var stars = 3;//星数
	var comment = '';//评论内容
	var impression = '';//印象
	$('.comment_btn').click(function() {
		
		//获取信息
		stars = parseInt( $('input[name=star]:checked').val() );
		comment = $('textarea[name=content]').val();
		impression = $('input[name=yx]').val();

		//验证信息
		if( !/[12345]/.test(stars) ) {

			alert('星数必须是1~5之间的数字!');
			return false;
		}

		if( comment == '') {
			alert('请填写评论内容!');
			return false;
		}
		
		//异步添加评论
		$.post(addCommentUrl, {stars: stars,comment:comment,impression:impression,id:id}, function(data) {
			
			if( data['status'] ){

				var oDiv = '<div>\
								<div class="comment_items mt10">\
									<div class="user_pic">\
										<dl>\
											<dt><a href=""><img src="/static/index/images/noface.gif" alt=""></a></dt>\
											<dd><a href="">'+uname+'</a></dd>\
										</dl>\
									</div>\
									<div class="item">\
											<div class="title">\
												<span>'+data['time']+'</span>\
												<strong class="star star'+stars+' starundefined"></strong>\
											</div>\
											<div class="comment_content">'+comment+'</div>\
											<div class="btns">\
												<a href="'+replyUrl+'/cid/'+data['id']+'" class="reply">回复(0)</a><a href="javascript:;" class="useful">有用(0)</a>\
											</div>\
									</div>\
									<div class="cornor"></div>\
								</div>\
							</div>';

				$('#comment_page').before(oDiv);

				$('#comment_real_form')[0].reset();

			}else{
				alert(data['msg']);
			}

		},'json');


	});

	//异步获取5条评论
	var sTop = 0;
	var defaultTop = 850;//默认发送ajax的滚动高度
	var getCommentNum = 3;//获取条数
	var startIndex = 0;//开始索引
	var flag = true;//防止重复提交
	getComment();
	$(window).scroll(function(event) {
		
		sTop = $(this).scrollTop();

		if( sTop >= defaultTop ) {

			getComment();

		}
		
	});

	$('#a_load_more').click(function() {
		getComment();
	});

	function getComment() {

		if( flag ) {

			flag = false;

			$.post( getCommentUrl, {id:id,startIndex:startIndex,getCommentNum:getCommentNum}, function(data) {
				
				if( data['status'] ) {

					// 拼凑评论数据
					var oDiv = '<div style="display:none" class="newCommentShow">';
					for(var i=0; i < data['msg'].length; i++ ) {

						if( data['msg'][i]['nickname'] == '' ) {

							data['msg'][i]['nickname'] = data['msg'][i]['email'];

						}

						oDiv += '<div class="comment_items mt10">\
									<div class="user_pic">\
										<dl>\
											<dt><a href=""><img src="/static/index/images/noface.gif" alt=""></a></dt>\
											<dd><a href="">'+data['msg'][i]['nickname']+'</a></dd>\
										</dl>\
									</div>\
									<div class="item">\
											<div class="title">\
												<span>'+data['msg'][i]['addtime']+'</span>\
												<strong class="star star'+data['msg'][i]['stars']+' starundefined"></strong>\
											</div>\
											<div class="comment_content">'+data['msg'][i]['content']+'</div>\
											<div class="btns">\
												<a href="'+replyUrl+'/cid/'+data['msg'][i]['cid']+'" class="reply">回复(0)</a><a href="javascript:;" class="useful">有用(0)</a>\
											</div>\
									</div>\
									<div class="cornor"></div>\
								</div>';

					}
					oDiv += '</div>';
					$('#comment_page').before(oDiv);
					$('.newCommentShow').fadeIn("slow");

					// 改变开始索引和默认高度
					startIndex += getCommentNum;
					defaultTop += 84*getCommentNum;

					//
					if( data['msg'].length < getCommentNum){
						$('#a_load_more').remove();
					}

					flag = true;

				}else{
					$(window).unbind("scroll");
					$('#a_load_more').remove();
				}

			},'json');
		}

	}

	//异步添加有用评论
	var cid = 0;//评论id
	var useFlag = true;//防止重复发送ajax
	var useNum = 0;
	
	$('.useful').live('click',function(){

		//获取评论id
		cid = $(this).parent().attr('cid');

		//获取有用数
		useNum = parseInt( $(this).text().match(/\d+/) );

		var _this = this;

		//异步添加有用
		$.get(addCommentUsedUrl,{id:cid},function(data) {

			if( data['status'] ) {

				$(_this).text('有用('+(useNum+1)+')');

			}else{

				alert(data['msg']);
				
			}
			
		},'json');


	})


	//购买数量
	//减少
	$("#reduce_num").click(function(){
		if (parseInt($(".amount").val()) <= 1){
			alert("商品数量最少为1");
		} else{
			$(".amount").val(parseInt($(".amount").val()) - 1);
		}
	});

	//增加
	$("#add_num").click(function(){
		$(".amount").val(parseInt($(".amount").val()) + 1);
	});

	//直接输入
	$(".amount").blur(function(){
		if (parseInt($(".amount").val()) < 1){
			alert("商品数量最少为1");
			$(this).val(1);
		}
	});

	//商品详情效果
	$(".detail_hd li").click(function(){
		$(".detail_div").hide().eq($(this).index()).show();
		$(this).addClass("on").siblings().removeClass("on");
	});

	// 异步添加最近浏览商品
	$.get(addRecentviewedGoodsUrl,{ id:id }, function( data ) {

		var html = '';
		var text = '';

		for ( var i = 0; i < data.msg.length; i++ ) {

			html+= '<dl>\
						<dt><a href="/'+goodUrl+'/'+data.msg[i].static_url+'"><img src="'+data.msg[i].pic_small+'" alt="" /></a></dt>\
						<dd><a href="/'+goodUrl+'/'+data.msg[i].static_url+'">'+data.msg[i].goods_name+'</a></dd>\
					</dl>';

			text+='<a href="/'+goodUrl+'/'+data.msg[i].static_url+'"><img src="'+data.msg[i].pic_small+'" alt="" /></a>';
		}



		// 
		$('.viewd').find('.leftbar_wrap').html( html );
		$('#recent_display_goods').find('li').html( text );

		
	},'json');

	// 异步获取最近浏览商品
	
});